package com.asa.numanaly.jiefangchen.Z;

import java.util.Iterator;

import com.asa.shishu.BaseMath;

/**
 * 整数域上解方程
 * @author asa
 *
 */
public class A {
	
	
	/**
	 * n元一次方程
	 * 有解没有(解当然必须也是整数域上的)
	 * 
	 * ax+by=c
	 * 
	 */
	public static boolean hasreturn(int[] abc, int c) {
		
		if (c==0||abc==null||abc.length==1) {
			
			return true;
			
		}
		int gcdcur = BaseMath.GCD(abc[0], abc[1]);
		

		for (int i = 2; i < abc.length; i++) {
			int jb = abc[i];
			gcdcur = BaseMath.GCD(gcdcur, jb);
			
			
		}
		
		
		//原理是要求a和b的最大公因子能整除c
		
		return gcdcur%c==0;
		
		
		
	}
	
	
	
	public static int[] jie(int[] abc, int c) {
		int gcdcur = BaseMath.GCD(abc[0], abc[1]);
		

		for (int i = 2; i < abc.length; i++) {
			int jb = abc[i];
			gcdcur = BaseMath.GCD(gcdcur, jb);
			
			
		}

//		if (c==0) {
//			
//			int[] result = new int[abc.length];
//			
//			for (int i = 0; i < result.length; i++) {
//				result[i] = 
//			}
//			
//			
//			
//			return new int[] {b/gcd,a/gcd};
//			
//		}
		
//		x = x0*c/gcd - b*k/gcd 
//		y = y0*c/gcd - a*k/gcd 
		
		//其中x0和y0是 ax+by=gcd的一个特解
		//而且我不知x0和y0这个特解是如何求
		//k是整数，任意，因为解不唯一
		//这个公式可以向多元一次推广
		return null;//没法表出
		
	}
	
	
	
	
	
	public static void main(String[] args) {
//		System.out.println(hasreturn(new int[] {105, 78}, 2019));
		
		System.out.println(7%1);
	}
	
	
	
	
	
	

}
